package com.caregiver.watch.business.care.model.po;

import com.caregiver.watch.business.care.enums.PackageTypeEnum;
import com.caregiver.watch.business.care.enums.PackageUnitEnum;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 用户套餐购买订单表实体类
 */
@Data
public class UserPackageOrder {
    /**
     * 主键ID
     */
    private Long id;

    /**
     * 用户ID
     */
    private Long userId;

    /**
     * 订单号
     */
    private String orderNo;

    /**
     * 订单状态：1-待支付，2-支付成功，3-支付失败，4-取消订单
     */
    private Integer orderStatus;

    /**
     * 订单金额
     */
    private BigDecimal totalAmount;

    /**
     * 支付时间
     */
    private LocalDateTime payTime;

    /**
     * 支付金额
     */
    private BigDecimal payAmount;

    /**
     * 支付类型：1-微信支付，2-支付宝支付
     */
    private Integer payType;

    /**
     * 支付单号
     */
    private String payNo;

    /**
     * 支付状态：1-待支付，2-支付成功，3-支付失败
     */
    private Integer payStatus;

    /**
     * 套餐名称
     */
    private String packageName;

    /**
     * 套餐编码
     */
    private String packageCode;

    /**
     * 套餐价格
     */
    private BigDecimal packagePrice;

    /**
     * 套餐类型
     */
    private PackageTypeEnum packageType;

    /**
     * 套餐值
     */
    private Integer packageValue;

    /**
     * 套餐单位
     */
    private PackageUnitEnum packageUnit;


    /**
     * 预警次数
     */
    private Integer warningCount;

    /**
     * 支持设备数量
     */
    private Integer supportDeviceNum;

    /**
     * 下单时间
     */
    private LocalDateTime orderTime;

    /**
     * 生效时间
     */
    private LocalDateTime effectiveTime;

    /**
     * 过期时间
     */
    private LocalDateTime expireTime;

    /**
     * 创建时间
     */
    private LocalDateTime createdTime;

    /**
     * 更新时间
     */
    private LocalDateTime updatedTime;

    /**
     * 删除标识：0-未删除，1-已删除
     */
    private Integer deleted;
}
